﻿using HCQ2_Model.VRDD.InputDto._20220314;
using HCQ2_Model.VRDD.InputDto._211217;
using HCQ2_Model.VRDD.OutputDto._20220314;
using HCQ2_Model.VRDD.OutputDto._211217;
using HCQ2_Model.VRQDMeta.InputDto._20220112;
using HCQ2_Model.VRQDMeta.OutputDto._20220112;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HCQ2_IDAL
{
    public partial interface IT_VRDDEventDAL
    {
        /// <summary>
        ///  按日期删除事件提醒
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        int DeleteMemoRemindByDate(InputDeleteMemoAlert param);
        /// <summary>
        ///  获取事件列表
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        List<OutputMemoList> GetMemoList(InputMemoList param);
        /// <summary>
        ///  获取事件提醒列表
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        List<OutputMemoRemindList> GetMemoRemindList(InputMemoRemindList param, out int total);
        /// <summary>
        ///  获取事件日期列表
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        List<OutputMemoDateList> GetMemoDateList(InputMemoDateList param);
        /// <summary>
        ///  获取应用商品列表
        /// </summary>
        /// <returns></returns>
        List<OutputMetaResult> GetMetaResult(InputMetaAppList param, int user_id, int create_id);
        /// <summary>
        ///  获取房间商品列表
        /// </summary>
        /// <returns></returns>
        List<OutputMetaRoom> GetMetaRoomResult(InputMetaRoomList param, int user_id, int create_id);
        /// <summary>
        ///  获取素材商品列表
        /// </summary>
        /// <param name="param"></param>
        /// <param name="total"></param>
        /// <returns></returns>
        List<MaterialListOutput> GetMaterialList(MaterialListInput param, int user_id, int create_id, out int total);
        /// <summary>
        ///  获取用户已购买的素材列表
        /// </summary>
        /// <param name="param"></param>
        /// <param name="total"></param>
        /// <returns></returns>
        List<PaidMaterialOutput> GetPaidMaterialList(PayPaidMaterialInput param, int user_id, out int total);
    }
}